https://www.afralisp.net/visual-lisp/
"AutoCAD2025 의 도움말에 vlide"를 입력하고 내용을 변역하세요.
Visual LISP는 AutoLISP 프로그래밍 언어의 확장판이다
AutoLISP보다 강력한 기능을 가지고 있는데, 이는 AutoCAD 객체 모델에 접근할 수 있기 때문이다
Visual LISP는 AutoCAD에 자체 개발 환경을 내장하고 있습니다
1997년 AutoCAD Release 14의 유료 부가 기능으로 처음 도입되었으나 1999년 3월 AutoCAD 2000에 포함되었습니다
그 이후로 더욱 강력한 프로그래밍 인터페이스에 개발 노력을 집중하기로 한 오토데스크의 Visual LISP 개발은 거의 이루어지지 않았다.
오토캐드를 켜고 새로운 도면을 열고, 풀다운 메뉴에서
"Tools ⇒ AutoLISP ⇒ Visual LISP Editor "를 선택합니다
풀다운 메뉴가 안 보이면 "명령 프롬프트에 enter menubar"를 입력하고"1 "로 설정합니다
Visual Lisp Editor(비주얼 리스프 편집기)가 열리며 다음과 같이 표시됩니다.
_$
콘솔 프롬프트에 이 항목을 입력한 다음 "Enter "를 누릅니다.
_$ (setq a "Test")
이제 이것을 입력하고 "Enter "를 다시 누릅니다.
_$ a
콘솔 창의 모양은 다음과 같습니다.
AutoCAD Command 프롬프트에서 변수 값을 보려면 변수 이름 앞에 느낌표를 (! VLISP 변수 이름) 입력하면 됩니다
AutoCAD Command 창과 달리, ENTER를 누를 때까지 VLISP Console 프롬프트의 입력 값이 처리되지 않습니다
콘솔 프롬프트에서 TAB를 눌러 이전에 콘솔 창에 입력한 텍스트를 불러올 수 있습니다
TAB를 누를 때마다 이전에 입력한 텍스트가 콘솔 프롬프트에서 텍스트를 대체합니다
VLISP 세션 중 콘솔 프롬프트에 입력한 모든 텍스트를 사이클링 할 때까지 TAB를 반복적으로 누를 수 있습니다
처음 입력한 라인으로 스크롤 한 후 콘솔 창에 입력한 마지막 명령을 검색하여 VLISP를 다시 시작하고 사이클이 반복됩니다
SHIFT+ TAB를 눌러 입력한 내역을 반대 방향으로 스크롤합니다
예를 들어 콘솔 프롬프트에서 다음 명령을 입력했다고 가정하면
(setq origin (getpoint "\nOrigin of inyn sign: ")) (setq radius (getdist "\nRadius of inyn sign: " origin)) (setq half-r (/ radius 2)) (setq origin-x (car origin)) (command "_.CIRCLE" origin radius)
콘솔 창에 입력된 명령을 검색하려면:
TAB를 한 번 누릅니다
VLISP는 입력한 마지막 명령을 검색하여 콘솔 프롬프트에 표시합니다.
_$(command ".CIRCLE" origin radius)
TAB를 다시 누릅니다
콘솔 프롬프트에 다음 명령이 표시됩니다.
_$ (setq origin-x (car origin))
TAB를 다시 누릅니다
VLISP는 다음 명령을 표시합니다.
_$(setq half-r(/ radius 2))
이제 SHIFT+ TAB를 누릅니다
VLISP는 방향을 반전시키고 이전 명령 뒤에 입력한 명령을 검색합니다.
_$ (setq origin-x (car origin))
SHIFT+ TAB를 다시 누릅니다
VLISP는 다음 명령을 표시합니다.
_$(command ".CIRCLE" origin radius)
콘솔 프롬프트에서 마지막으로 입력한 명령입니다.
SHIFT+ TAB를 다시 누릅니다
이전 명령이 이 VLISP 세션 중에 마지막으로 입력한 명령이므로 콘솔 창에서 입력한 명령에 따라 VLISP가 다시 시작됩니다.
_$ (setq origin (getpoint "\nOrigin of inyn sign: "))
참고 : 동일 식을 두 번 이상 입력할 경우 콘솔 창 입력 내역을 순환하면서 한 번만 나타납니다
입력 내역에서 연관 검색을 수행하여 이전에 입력한 특정 명령을 검색할 수 있습니다
콘솔 입력 내역의 연관 검색을 수행하려면:
찾을 텍스트를 입력합니다
예를 들어
(command at the Console prompt : _$ (command
TAB를 누릅니다
VLISP는 입력한 마지막 텍스트를 검색합니다 (command :
_$ (command "_.CIRCLE" origin radius)
만약 VLISP가 일치하는 것을 찾지 못합니다면,
아무런 반응도 하지 않습니다 (삐 소리를 내는 것을 제외하고)
SHIFT+ TAB를 눌러 연관 검색의 방향을 반대로 하고 점진적으로 덜 최근의 입력들을 찾습니다.
_$ ((setq origin-x (car origin) ((_>
콘솔 창에 입력된 명령을 중단하려면 SHIFT + ESC를 누릅니다
예를 들어, 다음과 같이 잘못된 함수 호출을 입력할 경우:
((_>; <input discarded> _$
SHIFT + ESC를 누르면 명령이 중단되고 VLISP는 다음과 같은 "입력 폐기" 메시지를 표시합니다.
콘솔 프롬프트에서 텍스트를 입력하고
SHIFT + ESC를 누르면 VLISP는 입력한 텍스트를 콘솔 창에 남겨두지만 텍스트를 평가하지 않고 새 프롬프트를 표시합니다.
콘솔 프롬프트에서 명령어의 일부를 입력하되
입력한 텍스트는 콘솔 창 히스토리에 보이므로 복사하여 붙여넣을 수 있지만 TAB를 눌러 텍스트를 가져올 수는 없는데, 이는 콘솔 히스토리 버퍼에 추가되지 않았기 때문이다.
코딩을 로드해 보겠습니다.
새 파일을 선택한 다음 이 코딩을 복사하여 텍스트 편집기에 붙여넣습니다
코딩은 텍스트 편집기에서 다음과 같이 표시됩니다.
편집기 색상에 대한 알아보겠습니다
VLISP 콘솔이나 텍스트 편집기 창에 텍스트를 입력하는 순간,
VLISP는 입력된 단어가 AutoLISP 함수, 숫자, 문자열 또는 다른 언어 요소인지 확인합니다.
VLISP는 모든 유형의 요소에 고유한 색상을 할당하며,
이것은 누락된 따옴표나 철자가 틀린 함수 이름을 탐지하는 데 도움이 된다.
기본 색상 체계는 다음 표와 같습니다.
| AutoLISP Language Element | Color |
|---|---|
| Built-in functions and protected symbols | Blue" |
| Strings | Magenta" |
| Integers | Green" |
| Real numbers | Teal" |
| Comments | ;Burgundy, on gray background&" |
| Parentheses | Red" |
| Unrecognized items (for example, user variables) | "Black" |
Note. 기본 색상을 변경할 수 있습니다만, 하지 마세요!
텍스트를 선택하는 가장 간단한 방법은 마우스 왼쪽 버튼을 두 번 클릭하는 것이다.
선택한 텍스트의 양은 커서의 위치에 따라 다르다.
힌트: AutoLisp 기능에 대한 도움말을 원하십니까?
기능 이름을 더블 클릭하여 선택한 후 "Help" 툴바 버튼을 선택하십시오.
특정 기능에 대한 도움말이 표시됩니다.
"Slot" 리스프 루틴을 로드하려면 "Load active edit window" 도구 모음 버튼을 선택합니다.
그러면 코드가 메모리에 로드됩니다.
이 루틴을 실행하려면 콘솔 프롬프트에서 다음을 입력합니다.
이제 필요할 때 AutoCAD 화면으로 전환하여 프로그램을 실행해야 합니다.
원한다면 코드를 선택하여 실행할 수도 있습니다.
실행할 코드 줄을 선택하고 "선택 로드 " 도구 모음 버튼을 선택한 다음 "Enter "를 누릅니다
선택한 코드 줄만 실행되므로 디버깅하기 좋습니다.
디버깅은 커서를 (defun C:SLOT) 문 앞에 놓고 "F9"를 누른다.
이렇게 하면 프로그램에 "브레이크 포인트(Breakpoint)"가 생긴다.
이제 프로그램을 다시 실행합니다.
실행되면서 브레이크 포인트 표시에서 정지합니다.
이제 "F8"을 누른다.
계속해서 "F8"을 누르면 전체 프로그램을 "single step "로 이동할 수 있다
한 단계 더 나아가자. "diam" 변수를 선택한 다음 "Add Watch" 도구 모음 버튼을 선택한다
"Watch"대화 상자가 나타납니다.
변수 "diam"이 현재 값과 함께 어떻게 나열되는지 주목하라. "Watch" 대화상자가 다음과 같이 될 때까지 다른 모든 변수에 대해 이 과정을 반복하라.
이제 프로그램을 다시 실행해,
여전히 "단일 single" 단계를 거친다.
프로그램이 진행될 때 변수들의 값이 어떻게 변하는지 주목하라.
좋아, 좀 더 활기를 불어넣어보자.
모든 브레이크 포인트를 지우려면 Ctrl-Shift-F9를 선택하고,
이제 디버그 풀다운 메뉴를 선택하고 애니메이트를 선택하여, 이제 프로그램을 다시 실행해봐.
야, 자동으로 실행되는 거야! 프로그램이 할 일을 할 때 "감시 " 창에서 변수가 바뀌는 것을 주목해라.
음, 비주얼 리스프 에디터에 관한 것은 여기서 보여드린 것보다 훨씬 더 많은 기능이 있지만, 이 기능들은 시작하는 데 더 중요한 기능들 중 일부라고 생각합니다.
도구(T) ⇒ 윈도우 속성(W) ⇒ 글꼴 선택(F)
글꼴을 선택하여 편집창의 상태를 확인하세요
뷰(V) ⇒ 도구 막대(B) ⇒ 전체표시(Q) ⇒ 적용(A) ⇒ 닫기(C)
도구 막대를 확인 하세요 (이동 가능)